iT邦幫忙

2022 iThome 鐵人賽

DAY 20
0
自我挑戰組

30天從0開始的NCPC之旅系列 第 20

[Day 20] UVA10071 & UVA12019 & UVA11827

  • 分享至 

  • xImage
  •  

UVA10071

點我進UVA10071

題意

給速度及時間,求出2倍時間的距離即在 2t 秒後所經過的位移是多少。

解題思路

先輸入速度跟時間,再直接帶公式即可求出
等速度運動運動的位移公式:平均速度經過的時間
此提公式即為:平均速度
2倍時間

#include<iostream>
using namespace std;
int main(){
int v,t;
while(cin>>v>>t){
if(v==0&&t==0)cout<<"0"<<endl;
else{
cout<<v*t*2<<endl;
}
}
return 0;
}

UVA12019

點我進UVA12019

題意

給2011年的日期,計算當時對應的日期是星期幾

解題思路

先將2011年的月有多少天存進陣列,再將輸入的月日轉成共經過多少天,除七之後即可獲得目前是星期幾。

#include <iostream>

using namespace std;

int main(){
	int num,mon,day,dayn[]={0,31,28,31,30,31,30,31,31,30,31,30,32};
	int sumd=0;
	string s[]={"Saturday","Sunday","Monday","Tuesday","Wednesday","Thursday","Friday"};
	
	cin>>num;
	while(num--){
		cin>>mon>>day;
		
		for(int i=1;i<mon;i++){
			sumd+=dayn[i];
		}
		
		sumd=sumd+day-1;
		
		cout<<s[sumd%7]<<endl;
		sumd=0;
		
	}


}

UVA11827

點我進UVA11827

#include<iostream>
#include<string>
#include <cstdlib>
#include <cstdio>
#include<algorithm>
#include <stdlib.h>
using namespace std;

int main(){
 int n;
 cin>>n;
 
 while(n>=0){
  int i=0,mx=0, num[100];
  string str;
  char ch;
  
  while((ch = getchar()) != '\n'){ //讀每個字元 
  
   if(ch != ' '){ //變成一個數字 
    str+=ch;
    num[i] = atoi(str.c_str());
    i++;
   }
   else{
    str="";
   }
   
  }
  
  for(int j=0;j<i;j++){
   for(int k=0;k<j;k++){
    if(i==j) continue;
    else{
     mx=max(mx ,__gcd(num[j],num[k])); //找最大gcd 
    }
   }
  }
  
  if(mx!=0)
   cout<<mx<<endl;
  n--;
 }
}

上一篇
[Day 19] UVA11150 +心得
下一篇
[Day 21] UVA10035 & UVA10082
系列文
30天從0開始的NCPC之旅30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

1 則留言

0
蘿蔔
iT邦新手 5 級 ‧ 2022-10-03 21:21:39

啾咪~~~~~~~~~~~~~~~~寫得很棒

我要留言

立即登入留言